A connection protocol between a host apparatus and a memory system is well known. For example, when deleting data on an operating system (OS) of the host apparatus, management information associated with the data is simply deleted on the OS and data itself is not actually deleted in the memory system. In the case where a hard disk drive (HDD) is adopted as the memory system, data stored in the memory system is not always deleted every time when data is deleted on the OS. Therefore, performance of the host apparatus is improved.
However, according to the above connection protocol, data that should have been deleted on the OS may be still recognized as valid data on the memory system (such data is hereinafter referred to as “host-invalid and device-valid data”). Therefore, actual free areas in the memory system may be fewer than free areas recognized by the OS and thereby the free areas of the memory system tend to be exhausted. In the case where a solid state drive (SSD) including a flash memory (flash EEPROM) is adopted as the memory system, the exhaustion of the free areas will cause performance deterioration.
To solve this problem, in recent years, a connection protocol in which the OS notifies the memory system of memory areas unnecessary for the OS has been developed. The SSD may prevent the exhaustion of the free areas due to an increase in host-invalid and device-valid data by deleting data stored in the memory area designated by the notification (a delete notification).